package com.yunxin.core.application.service;

import com.yunxin.common.result.PageResult;
import com.yunxin.core.application.command.page.GetPageConfigInfoCommand;
import com.yunxin.core.application.command.page.PagePageCommand;
import com.yunxin.core.application.dto.page.PageComponentElementInfoDataAdminDTO;
import com.yunxin.core.application.dto.page.PageConfigInfoDTO;
import com.yunxin.core.application.dto.page.PageListDTO;
import com.yunxin.core.application.dto.page.PagePageDTO;

import java.util.List;

/**
 * @author zero°
 * @since 2023-05-27
 */
public interface PageQueryAdminService {


    /**
     * 获取页面拉列表
     * @return List<PageListDTO>
     */
    List<PageListDTO> listPage();

    /**
     * 分页查询页面列表
     * @param command command
     * @return PageResult<PagePageDTO>
     */
    PageResult<PagePageDTO> pagePageQuery(PagePageCommand command);

    /**
     * 获取页面配置
     *
     * @param command command
     * @return PageConfigInfoDTO
     */
    PageConfigInfoDTO<PageComponentElementInfoDataAdminDTO> getPageConfig(GetPageConfigInfoCommand command);
}
